package com.mhg.collection.theSet;

import java.util.HashSet;
import java.util.Iterator;

public class Demo_HashSet_01 {

	public static void main(String[] args) {
		//1.排重 2.无序
		HashSet hs = new HashSet();
		System.out.println(hs.add("java09"));
		System.out.println(hs.add("java09"));//在存储的时候 判断是否是同一个元素 如果有 就返回false 并且不会添加进入集合中
		hs.add("java01");
		hs.add("java03");
		hs.add("java04");
		hs.add("java02");
		hs.add("java04");
		System.out.println(hs);
		/*
		 * String 类 本身已经重写了 Object类中的 HashCode 和 equals方法
		 * 根据hashCode()方法的返回值 来决定元素要插入的位置
		 * 如果该位置上已经存在元素了 则会调用该元素的equals()方法 进行比较
		 * 如果两个元素相等 则丢掉后来的
		 * 如果两个元素不相等 则存储
		 * */
		System.out.println("java09".hashCode());
		System.out.println("java09".hashCode());
		System.out.println("java04".hashCode());
		System.out.println("java03".hashCode());
		System.out.println("java02".hashCode());
		Iterator it = hs.iterator();
		while(it.hasNext()){
			System.out.println(it.next());
		}
	}

}
